package br.com.vti.sisp_sicrim.antigo.controller.relatorios;

import java.io.FileNotFoundException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Calendar;

import net.sf.jasperreports.engine.JRException;
import br.com.caelum.vraptor.Result;
import br.com.caelum.vraptor.interceptor.download.InputStreamDownload;
import br.com.vti.sisp_sicrim.antigo.util.Relatorios;
import br.com.vti.sisp_sicrim.antigo.util.Sessao;

/**
 * Classe responsavel por encapsular o tratamento e as consistencias da tela Ctltc106Report
 * 
 * @author Incode - Data: jun/2014
 * 
 */
public class Ctltc106Report {
	private String versao;
	private int dataCorrente;
	private String titulo;
	private String horaCorrente;
	private int dtini;
	private int dtfim;
	private String posto;
	private String empresa;
	private String nomeClasse;
	private long[] nde1 = new long[51];
	private long[] rg1 = new long[51];
	private String[] nom1 = new String[51];
	private int[] dat1 = new int[51];
	private int[] mat1 = new int[51];
	private Result result;
	private Sessao sessao;
	private Relatorios report;

	// Classes views
	// Classes includes
	public Ctltc106Report() throws JRException {
		inicializar();
	}

	public Ctltc106Report(Sessao sessao) throws JRException {
		this.sessao = sessao;
		inicializar();
	}

	public void inicializar() throws JRException {
		report = new Relatorios();
		versao = "0";
		dataCorrente = 0;
		titulo = "";
		dtini = 0;
		dtfim = 0;
		posto = "";
		Arrays.fill(nde1, 0);
		Arrays.fill(rg1, 0);
		Arrays.fill(nom1, "");
		Arrays.fill(dat1, 0);
		Arrays.fill(mat1, 0);
		empresa = "";
		nomeClasse = "";
		horaCorrente = new SimpleDateFormat("HH:mm:ss").format(Calendar.getInstance().getTime()); // *TIMX
		report.setNumeroRel(1, "D");
		{
			report.setNumeroLinhaRel(1, 4);
			{
				report.adicionaCampo(2, 7, "lit_2_7", "C", "", "GEJUSPC");
				report.adicionaCampo(10, 53, "lit_10_53", "C", "", "- GERENCIA DA JUSTICA, SEGURANCA PUBLICA E CIDADDANIA");
				report.adicionaCampo(72, 4, "lit_72_4", "C", "", "VER.");
				report.adicionaCampo(77, 2, "Versao", "N", "9.9", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(2, 3);
			{
				report.adicionaCampo(2, 4, "lit_2_4", "C", "", "SISP");
				report.adicionaCampo(10, 45, "lit_10_45", "C", "", "- SISTEMA DE INFORMACOES DE SEGURANCA PUBLICA");
				report.adicionaCampo(70, 8, "dataCorrente", "N", "99/99/9999", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(3, 3);
			{
				report.adicionaCampo(2, 21, "lit_2_21", "C", "", "LIVRO DE CONTROLE DE:");
				report.adicionaCampo(24, 35, "Titulo", "X", "", "");
				report.adicionaCampo(72, 8, "horaCorrente", "S", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(4, 7);
			{
				report.adicionaCampo(2, 3, "lit_2_3", "C", "", "DE:");
				report.adicionaCampo(6, 8, "Dtini", "N", "99/99/9999", "");
				report.adicionaCampo(18, 1, "lit_18_1", "C", "", "a");
				report.adicionaCampo(21, 8, "Dtfim", "N", "99/99/9999", "");
				report.adicionaCampo(33, 2, "lit_33_2", "C", "", "NO");
				report.adicionaCampo(37, 6, "lit_37_6", "C", "", "POSTO:");
				report.adicionaCampo(44, 35, "Posto", "X", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(6, 6);
			{
				report.adicionaCampo(2, 6, "lit_2_6", "C", "", "N.DOC.");
				report.adicionaCampo(14, 2, "lit_14_2", "C", "", "R.");
				report.adicionaCampo(17, 5, "lit_17_5", "C", "", "GERAL");
				report.adicionaCampo(26, 4, "lit_26_4", "C", "", "NOME");
				report.adicionaCampo(64, 4, "lit_64_4", "C", "", "DATA");
				report.adicionaCampo(75, 7, "lit_75_7", "C", "", "MAT.FUN");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(7, 4);
			{
				report.adicionaCampo(2, 23, "lit_2_23", "C", "", "----------- -----------");
				report.adicionaCampo(26, 1, "lit_26_1", "C", "", "-");
				report.adicionaCampo(64, 8, "lit_64_8", "C", "", "--------");
				report.adicionaCampo(75, 7, "lit_75_7", "C", "", "-------");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(8, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[1]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[1]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[1]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[1]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[1]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(9, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[2]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[2]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[2]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[2]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[2]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(10, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[3]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[3]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[3]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[3]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[3]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(11, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[4]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[4]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[4]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[4]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[4]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(12, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[5]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[5]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[5]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[5]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[5]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(13, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[6]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[6]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[6]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[6]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[6]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(14, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[7]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[7]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[7]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[7]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[7]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(15, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[8]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[8]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[8]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[8]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[8]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(16, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[9]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[9]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[9]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[9]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[9]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(17, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[10]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[10]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[10]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[10]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[10]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(18, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[11]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[11]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[11]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[11]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[11]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(19, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[12]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[12]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[12]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[12]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[12]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(20, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[13]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[13]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[13]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[13]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[13]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(21, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[14]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[14]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[14]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[14]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[14]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(22, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[15]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[15]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[15]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[15]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[15]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(23, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[16]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[16]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[16]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[16]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[16]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(24, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[17]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[17]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[17]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[17]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[17]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(25, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[18]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[18]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[18]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[18]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[18]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(26, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[19]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[19]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[19]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[19]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[19]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(27, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[20]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[20]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[20]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[20]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[20]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(28, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[21]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[21]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[21]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[21]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[21]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(29, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[22]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[22]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[22]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[22]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[22]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(30, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[23]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[23]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[23]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[23]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[23]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(31, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[24]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[24]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[24]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[24]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[24]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(32, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[25]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[25]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[25]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[25]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[25]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(33, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[26]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[26]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[26]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[26]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[26]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(34, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[27]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[27]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[27]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[27]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[27]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(35, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[28]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[28]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[28]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[28]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[28]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(36, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[29]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[29]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[29]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[29]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[29]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(37, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[30]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[30]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[30]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[30]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[30]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(38, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[31]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[31]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[31]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[31]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[31]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(39, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[32]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[32]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[32]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[32]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[32]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(40, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[33]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[33]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[33]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[33]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[33]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(41, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[34]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[34]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[34]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[34]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[34]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(42, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[35]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[35]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[35]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[35]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[35]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(43, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[36]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[36]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[36]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[36]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[36]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(44, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[37]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[37]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[37]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[37]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[37]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(45, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[38]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[38]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[38]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[38]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[38]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(46, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[39]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[39]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[39]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[39]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[39]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(47, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[40]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[40]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[40]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[40]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[40]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(48, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[41]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[41]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[41]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[41]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[41]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(49, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[42]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[42]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[42]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[42]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[42]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(50, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[43]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[43]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[43]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[43]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[43]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(51, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[44]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[44]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[44]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[44]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[44]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(52, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[45]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[45]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[45]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[45]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[45]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(53, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[46]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[46]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[46]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[46]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[46]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(54, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[47]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[47]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[47]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[47]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[47]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(55, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[48]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[48]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[48]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[48]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[48]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(56, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[49]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[49]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[49]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[49]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[49]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(57, 5);
			{
				report.adicionaCampo(2, 11, "Nde1[50]", "N", "", "");
				report.adicionaCampo(14, 11, "Rg1[50]", "N", "", "");
				report.adicionaCampo(26, 37, "Nom1[50]", "X", "", "");
				report.adicionaCampo(64, 8, "Dat1[50]", "N", "ZZ/ZZ/ZZZZ", "");
				report.adicionaCampo(75, 7, "Mat1[50]", "N", "", "");
				report.setFimLinhaRel();
			}
			report.setNumeroLinhaRel(59, 3);
			{
				report.adicionaCampo(29, 8, "Empresa", "X", "", "");
				report.adicionaCampo(39, 1, "lit_39_1", "C", "", "-");
				report.adicionaCampo(42, 8, "Program", "X", "", "");
				report.setFimLinhaRel();
			}
		}
	}

	public boolean validar() {
		// validar os campos recebidos da tela
		return true;
	}

	public String getVersao() {
		return versao;
	}

	public void setVersao(String versao) throws ParseException {
		this.versao = versao;
		report.adicionaValorReport("Versao", versao);
	}

	public int getDataCorrente() {
		return dataCorrente;
	}

	public void setDataCorrente(int dataCorrente) throws ParseException {
		this.dataCorrente = dataCorrente;
		report.adicionaValorReport("dataCorrente", dataCorrente);
	}

	public String getTitulo() {
		return titulo;
	}

	public void setTitulo(String titulo) throws ParseException {
		this.titulo = titulo;
		report.adicionaValorReport("Titulo", titulo);
	}

	public int getDtini() {
		return dtini;
	}

	public void setDtini(int dtini) throws ParseException {
		this.dtini = dtini;
		report.adicionaValorReport("Dtini", dtini);
	}

	public int getDtfim() {
		return dtfim;
	}

	public void setDtfim(int dtfim) throws ParseException {
		this.dtfim = dtfim;
		report.adicionaValorReport("Dtfim", dtfim);
	}

	public String getPosto() {
		return posto;
	}

	public void setPosto(String posto) throws ParseException {
		this.posto = posto;
		report.adicionaValorReport("Posto", posto);
	}

	public String getEmpresa() {
		return empresa;
	}

	public void setEmpresa(String empresa) throws ParseException {
		this.empresa = empresa;
		report.adicionaValorReport("Empresa", empresa);
	}

	public String getNomeClasse() {
		return nomeClasse;
	}

	public void setNomeClasse(String nomeClasse) throws ParseException {
		this.nomeClasse = nomeClasse;
		report.adicionaValorReport("Program", nomeClasse);
	}

	public long[] getNde1() {
		return nde1;
	}

	public void setNde1(long[] nde1) throws ParseException {
		this.nde1 = nde1;
		report.adicionaValorReport("Nde1", nde1);
	}

	public long[] getRg1() {
		return rg1;
	}

	public void setRg1(long[] rg1) throws ParseException {
		this.rg1 = rg1;
		report.adicionaValorReport("Rg1", rg1);
	}

	public String[] getNom1() {
		return nom1;
	}

	public void setNom1(String[] nom1) throws ParseException {
		this.nom1 = nom1;
		report.adicionaValorReport("Nom1", nom1);
	}

	public int[] getDat1() {
		return dat1;
	}

	public void setDat1(int[] dat1) throws ParseException {
		this.dat1 = dat1;
		report.adicionaValorReport("Dat1", dat1);
	}

	public int[] getMat1() {
		return mat1;
	}

	public void setMat1(int[] mat1) throws ParseException {
		this.mat1 = mat1;
		report.adicionaValorReport("Mat1", mat1);
	}

	public long getNde1(int index) {
		return nde1[index];
	}

	public void setNde1(int index, long nde1) throws ParseException {
		this.nde1[index] = nde1;
		report.adicionaValorReport("Nde1" + "[" + String.valueOf(index) + "]", nde1);
	}

	public long getRg1(int index) {
		return rg1[index];
	}

	public void setRg1(int index, long rg1) throws ParseException {
		this.rg1[index] = rg1;
		report.adicionaValorReport("Rg1" + "[" + String.valueOf(index) + "]", rg1);
	}

	public String getNom1(int index) {
		return nom1[index];
	}

	public void setNom1(int index, String nom1) throws ParseException {
		this.nom1[index] = nom1;
		report.adicionaValorReport("Nom1" + "[" + String.valueOf(index) + "]", nom1);
	}

	public int getDat1(int index) {
		return dat1[index];
	}

	public void setDat1(int index, int dat1) throws ParseException {
		this.dat1[index] = dat1;
		report.adicionaValorReport("Dat1[" + String.valueOf(index) + "]", dat1);
	}

	public int getMat1(int index) {
		return mat1[index];
	}

	public void setMat1(int index, int mat1) throws ParseException {
		this.mat1[index] = mat1;
		report.adicionaValorReport("Mat1" + "[" + String.valueOf(index) + "]", mat1);
	}

	public String getHoraCorrente() {
		return horaCorrente;
	}

	public void setHoraCorrente(String horaCorrente) throws ParseException {
		this.horaCorrente = horaCorrente;
		report.adicionaValorReport("horaCorrente", horaCorrente);
	}

	public void setPageSize(int pagesize) throws JRException {
		report.setPageSize(pagesize);
	}

	public void setLineSize(int linesize) {
		report.setLineSize(linesize);
	}

	public int getPageSize() {
		return report.getPageSize();
	}

	public int getPageLine() {
		return report.getPageLine();
	}

	public void saltaLinhas(int qtdLinhas) throws ParseException, JRException {
		report.saltaLinhas(qtdLinhas);
	}

	public void gravaRelatorio(int nroRel) throws ParseException, JRException {
		report.gravaRelatorio(report, nroRel, false);
	}

	public InputStreamDownload imprimir() throws FileNotFoundException, JRException {
		return report.imprimir();
	}
}
